import java.util.List;

class Solution {
    public int[] minBitwiseArray(List<Integer> nums) {
        int n=nums.size();
        int[] ans=new int[n];

        for (int i = 0; i < n; i++) {
            int d=-1;
            for (int j = 1; j < 10001; j++) {
                if((j|(j+1))== nums.get(i)){
                    d=j;
                    break;
                }
            }
            if(d!=-1){
                ans[i]=d;
            }else{
                ans[i]=-1;
            }
        }

        return ans;
    }
}